This invention relates to a technique for compensating a sensed variable, where the variable can be representative of position as in a process automation application, or representative of some other physical variable such as pressure, temperature, pH, optical intensity as in a process control industry application. More particularly, the invention applies to devices, such as transmitters, actuators and positioners, which compensate a sensed variable to provide an output representative of the variable.
There is a need to improve the accuracy with which measurement transmitters and devices with actuated outputs, such as a positioner, compensate outputs representative of process variables. Measurement transmitters sense process variables such as pressure, temperature, flow, pH, position, displacement, velocity and the like in a process control or process automation installation. Transmitters have analog-to-digital (A/D) converters for digitizing sensor outputs representative of sensed process variable and a compensation circuit for compensating the repeatable errors in the digitized process variable outputs. Temperature is one of the main sources of the error. The compensation circuit typically comprises a microprocessor which calculates the compensated process variable output with long polynomial functions selected to fit the error characteristics of the sensor over a span of pressures. Constants in the long polynomial function are individually selected to each sensor. During manufacture, individual testing of each sensor generates a set of characterization constants related to the sensor errors which is later stored in a transmitter EEPROM. Using this compensation scheme, process variables can typically be corrected to an accuracy of 0.05% over the span of the primary process variable which the transmitter measures. For example, known pressure transmitters having a span of 0 to 150 inches of water provide corrected pressures within 0.05% accuracy. Limited electrical power and limited time to compute the output make it difficult to complete more complex computation needed to improve accuracy.
Errors in the operating characteristic of the sensor can be a complex, sometimes non-linear function of many variables. The primary variable (the variable which is compensated), contributes directly to the error, while secondary process variables (which affect the measurement of the primary process variables) contribute indirectly to the error. As the need for accuracy increases, contributions of secondary variables become significant. Current approaches solve this quandary with high order polynomials in multiple process variables, but the resulting equation is arithmetically ill-conditioned and sensitive to the manner in which the polynomial is computed, in that overflows may occur. One transmitter compensation equation is an eleventh order polynomial with approximately 100 terms in three variables, which must be calculated each time the transmitter outputs a process variable. Generating characterization constants for these high order polynomials is costly and time consuming. Furthermore, this approach cannot optimally capture the real behavior of the non-linear process variables, which interact nonlinearly.
In addition to concerns of software and computational complexity, power consumption is critical for transmitters which receive all their operating power over the same wires used for communication. Furthermore, some "intrinsically safe" areas where transmitters are installed limit the transmitter's available power. The finite current budget not only limits the number and complexity of the calculations, but impacts the functionality able to be incorporated in the transmitter. For example, A/D converters could convert digitized sensor outputs more rapidly if more power were available, thereby increasing the transmitter update rate. An EEPROM large enough to accommodate all the characterization constants also consumes power which would otherwise provide additional functionality.
There is thus a need for an accurate method for compensating process variables which is computationally simple and requires small numbers of stored characterization constants, so as to consume a reduced amount of power and provide excess power for additional functionality and increased update rates in the transmitter.